先來個socket.io官網
寫了老半天終於要來寫socket了很怕湊不滿30天
先在Terminal安裝套件
npm i socket.io
裝好之後來到server > index.js
檔案引入socket
我們先在server
資料夾裡開一個新的資料夾叫做socket
,裡面開一支index.js(也可以把東西直接塞在server > index.js
這支檔案裡,這邊只是另開資料夾管理)
server > socket > index.js
內容如下
const SocketIO = require('socket.io')
let io = null
module.exports = {
init(server) {
io = SocketIO(server)
io.on('connection', async function(socket) {
console.log('socket connection')
})
}
}
接下來到server > index.js
設定,這支檔案只要一開始建nuxt專案的時候有選express,裡面就會有一些固定的內容,大概在const app = express()
後面加入以下四行
const http = require('http')
const server = http.createServer(app)
const io = require('socket.io')(server)
const socket = require('./socket')
並且把
app.listen(port, host)
改成
server.listen(port, host)
後面加上
socket.init(server) // 呼叫socket資料夾的init()
server段的設定就到這邊
之後找個首頁引入socket
<script>
import io from 'socket.io-client'
const socket = io()
export default {
}
</script>
最後,在terminal npm run dev之後打開頁面,
就會看到terminal上面console.log出socket connection
是terminal上面喔!!!不是網頁右鍵打開的console喔!!!
就是socket引入成功囉!(゚∀゚)(゚∀゚)(゚∀゚)
有不清楚的可以到github比對